--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / MeshChatX.git / files / meshchatx / src / frontend / js / NotificationUtils.js
Displaying Raw • Download
meshchatx/src/frontend/js/NotificationUtils.js c0b0ddffd735a0d007c1be9a5e8563ec42fdafc0 (c0b0ddff) Text, 8.35 KB
T8b949e// SPDX-License-Identifier: 0BSD
Tff7b72class Te6edf3NotificationUtils Tb4b4b4{
T8b949e/** @type {Map<string, { close: () => void }[]>} */
Tff7b72static Te6edf3_webMessageNotifications Tff7b72= Tff7b72new Tffa657MapTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72static Te6edf3_isAndroidTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72return Tffa657BooleanTb4b4b4(
Tff7b72typeof Tffa657window Tff7b72!== Ta5d6ff"undefined" Tff7b72&&
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroid Tff7b72&&
Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3getPlatform Tff7b72=== Ta5d6ff"function" Tff7b72&&
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3getPlatformTb4b4b4(Tb4b4b4) Tff7b72=== Ta5d6ff"android"
Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* Android OS message notifs are owned by the Python push bridge.
* @returns {boolean}
*/
Tff7b72static Te6edf3ownsOsMessageNotificationsTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72return Tff7b72!Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3_normalizeHashTb4b4b4(Te6edf3destinationHashTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3destinationHash Tff7b72== Tff7b72nullTb4b4b4) Tb4b4b4{
Tff7b72return Ta5d6ff""Tb4b4b4;
Tb4b4b4}
Tff7b72return Tffa657StringTb4b4b4(Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3trimTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3toLowerCaseTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3_messageTagTb4b4b4(Te6edf3destinationHashTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3h Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_normalizeHashTb4b4b4(Te6edf3destinationHashTb4b4b4)Tb4b4b4;
Tff7b72return Te6edf3h Tff7b72? Ta5d6ff`Ta5d6fflxmf-Tffd700${Te6edf3hTffd700}Ta5d6ff` Tff7b72: Ta5d6ff"new_message"Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3_trackWebNotificationTb4b4b4(Te6edf3destinationHashTb4b4b4, Te6edf3notificationTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3key Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_normalizeHashTb4b4b4(Te6edf3destinationHashTb4b4b4) Tff7b72|| Ta5d6ff"__untagged__"Tb4b4b4;
Tff7b72let Te6edf3list Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Te6edf3getTb4b4b4(Te6edf3keyTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3listTb4b4b4) Tb4b4b4{
Te6edf3list Tff7b72= Tb4b4b4[Tb4b4b4]Tb4b4b4;
Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Te6edf3setTb4b4b4(Te6edf3keyTb4b4b4, Te6edf3listTb4b4b4)Tb4b4b4;
Tb4b4b4}
Te6edf3listTb4b4b4.Te6edf3pushTb4b4b4(Te6edf3notificationTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3showIncomingCallNotificationTb4b4b4(Te6edf3callerNameTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3showNotificationTb4b4b4(
Ta5d6ff"Incoming Call"Tb4b4b4,
Te6edf3callerName Tff7b72? Ta5d6ff`Tffd700${Te6edf3callerNameTffd700}Ta5d6ff is calling you.Ta5d6ff` Tff7b72: Ta5d6ff"Someone is calling you."
Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3showIncomingCallNotificationTb4b4b4(Te6edf3callerName Tff7b72|| Ta5d6ff"Someone"Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3NotificationTb4b4b4.Te6edf3requestPermissionTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3thenTb4b4b4(Tb4b4b4(Te6edf3resultTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3result Tff7b72=== Ta5d6ff"granted"Tb4b4b4) Tb4b4b4{
Tff7b72new Tffa657windowTb4b4b4.Te6edf3NotificationTb4b4b4(Ta5d6ff"Incoming Call"Tb4b4b4, Tb4b4b4{
Te6edf3bodyTff7b72: Te6edf3callerName Tff7b72? Ta5d6ff`Tffd700${Te6edf3callerNameTffd700}Ta5d6ff is calling you.Ta5d6ff` Tff7b72: Ta5d6ff"Someone is calling you."Tb4b4b4,
Te6edf3tagTff7b72: Ta5d6ff"incoming_telephone_call"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3showMissedCallNotificationTb4b4b4(Tff7b72fromTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3showNotificationTb4b4b4(Ta5d6ff"Missed Call"Tb4b4b4, Ta5d6ff`Ta5d6ffYou missed a call from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3showMissedCallNotificationTb4b4b4(Ta5d6ff"Missed Call"Tb4b4b4, Ta5d6ff`Ta5d6ffYou missed a call from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3NotificationTb4b4b4.Te6edf3requestPermissionTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3thenTb4b4b4(Tb4b4b4(Te6edf3resultTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3result Tff7b72=== Ta5d6ff"granted"Tb4b4b4) Tb4b4b4{
Tff7b72new Tffa657windowTb4b4b4.Te6edf3NotificationTb4b4b4(Ta5d6ff"Missed Call"Tb4b4b4, Tb4b4b4{
Te6edf3bodyTff7b72: Ta5d6ff`Ta5d6ffYou missed a call from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4,
Te6edf3tagTff7b72: Ta5d6ff"missed_call"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3showNewVoicemailNotificationTb4b4b4(Tff7b72fromTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3showNotificationTb4b4b4(Ta5d6ff"New Voicemail"Tb4b4b4, Ta5d6ff`Ta5d6ffYou have a new voicemail from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3showNotificationTb4b4b4(Ta5d6ff"New Voicemail"Tb4b4b4, Ta5d6ff`Ta5d6ffYou have a new voicemail from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3NotificationTb4b4b4.Te6edf3requestPermissionTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3thenTb4b4b4(Tb4b4b4(Te6edf3resultTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3result Tff7b72=== Ta5d6ff"granted"Tb4b4b4) Tb4b4b4{
Tff7b72new Tffa657windowTb4b4b4.Te6edf3NotificationTb4b4b4(Ta5d6ff"New Voicemail"Tb4b4b4, Tb4b4b4{
Te6edf3bodyTff7b72: Ta5d6ff`Ta5d6ffYou have a new voicemail from Tffd700${Tff7b72fromTffd700}Ta5d6ff.Ta5d6ff`Tb4b4b4,
Te6edf3tagTff7b72: Ta5d6ff"new_voicemail"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* @param {string} from
* @param {string} content
* @param {boolean} [silent]
* @param {string|null} [destinationHash]
*/
Tff7b72static Te6edf3showNewMessageNotificationTb4b4b4(Tff7b72fromTb4b4b4, Te6edf3contentTb4b4b4, Te6edf3silent Tff7b72= Tff7b72falseTb4b4b4, Te6edf3destinationHash Tff7b72= Tff7b72nullTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3NotificationUtilsTb4b4b4.Te6edf3ownsOsMessageNotificationsTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3body Tff7b72= Tff7b72from Tff7b72? Ta5d6ff`Tffd700${Tff7b72fromTffd700}Ta5d6ff: Tffd700${Te6edf3content Tff7b72|| Ta5d6ff"Sent a message."Tffd700}Ta5d6ff` Tff7b72: Ta5d6ff"Someone sent you a message."Tb4b4b4;
Tff7b72const Te6edf3hash Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_normalizeHashTb4b4b4(Te6edf3destinationHashTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3showNotification Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3showNotificationTb4b4b4(Ta5d6ff"New Message"Tb4b4b4, Te6edf3bodyTb4b4b4, Te6edf3silentTb4b4b4, Te6edf3hash Tff7b72|| Tff7b72nullTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72returnTb4b4b4;
Tb4b4b4}
Te6edf3NotificationTb4b4b4.Te6edf3requestPermissionTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3thenTb4b4b4(Tb4b4b4(Te6edf3resultTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3result Tff7b72!== Ta5d6ff"granted"Tb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3notification Tff7b72= Tff7b72new Tffa657windowTb4b4b4.Te6edf3NotificationTb4b4b4(Ta5d6ff"New Message"Tb4b4b4, Tb4b4b4{
Te6edf3bodyTb4b4b4,
Te6edf3tagTff7b72: Te6edf3NotificationUtilsTb4b4b4.Te6edf3_messageTagTb4b4b4(Te6edf3hashTb4b4b4)Tb4b4b4,
Te6edf3silentTff7b72: Tffa657BooleanTb4b4b4(Te6edf3silentTb4b4b4)Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3NotificationUtilsTb4b4b4.Te6edf3_trackWebNotificationTb4b4b4(Te6edf3hashTb4b4b4, Te6edf3notificationTb4b4b4)Tb4b4b4;
Te6edf3notificationTb4b4b4.Te6edf3onclose Tff7b72= Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3key Tff7b72= Te6edf3hash Tff7b72|| Ta5d6ff"__untagged__"Tb4b4b4;
Tff7b72const Te6edf3list Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Te6edf3getTb4b4b4(Te6edf3keyTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3listTb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72const Te6edf3idx Tff7b72= Te6edf3listTb4b4b4.Te6edf3indexOfTb4b4b4(Te6edf3notificationTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3idx Tff7b72>= T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3listTb4b4b4.Te6edf3spliceTb4b4b4(Te6edf3idxTb4b4b4, T79c0ff1Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3listTb4b4b4.Te6edf3length Tff7b72=== T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Tff7b72deleteTb4b4b4(Te6edf3keyTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* Clear OS message notifications for a peer, or all when hash is empty.
* @param {string|null|undefined} [destinationHash]
*/
Tff7b72static Te6edf3clearMessageNotificationsTb4b4b4(Te6edf3destinationHashTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3hash Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_normalizeHashTb4b4b4(Te6edf3destinationHashTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tffa657windowTb4b4b4.Te6edf3electron Tff7b72&& Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3closeMessageNotifications Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3electronTb4b4b4.Te6edf3closeMessageNotificationsTb4b4b4(Te6edf3hash Tff7b72|| Tff7b72nullTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3hash Tff7b72&& Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3cancelMessageNotifications Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3cancelMessageNotificationsTb4b4b4(Te6edf3hashTb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Tff7b72!Te6edf3hash Tff7b72&& Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3cancelAllMessageNotifications Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3cancelAllMessageNotificationsTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3hashTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3list Tff7b72= Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Te6edf3getTb4b4b4(Te6edf3hashTb4b4b4) Tff7b72|| Tb4b4b4[Tb4b4b4]Tb4b4b4;
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3n Tff7b72of Te6edf3listTb4b4b4.Te6edf3sliceTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72try Tb4b4b4{
Te6edf3nTb4b4b4.Te6edf3closeTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72catch Tb4b4b4{
T8b949e// ignore
Tb4b4b4}
Tb4b4b4}
Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Tff7b72deleteTb4b4b4(Te6edf3hashTb4b4b4)Tb4b4b4;
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72for Tb4b4b4(Tff7b72const Tb4b4b4[Tb4b4b4, Te6edf3listTb4b4b4] Tff7b72of Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4) Tb4b4b4{
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3n Tff7b72of Te6edf3listTb4b4b4.Te6edf3sliceTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72try Tb4b4b4{
Te6edf3nTb4b4b4.Te6edf3closeTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72catch Tb4b4b4{
T8b949e// ignore
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}
Te6edf3NotificationUtilsTb4b4b4.Te6edf3_webMessageNotificationsTb4b4b4.Te6edf3clearTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72static Te6edf3clearAllMessageNotificationsTb4b4b4(Tb4b4b4) Tb4b4b4{
Te6edf3NotificationUtilsTb4b4b4.Te6edf3clearMessageNotificationsTb4b4b4(Tff7b72nullTb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* Sync open peers + DND into the Android Python push bridge via Java.
* @param {string[]} hashes
* @param {boolean} [dndEnabled]
*/
Tff7b72static Te6edf3syncAndroidNotificationContextTb4b4b4(Te6edf3hashesTb4b4b4, Te6edf3dndEnabled Tff7b72= Tff7b72falseTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72returnTb4b4b4;
Tb4b4b4}
Tff7b72try Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3setOpenConversationHashes Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3joined Tff7b72= Tb4b4b4(Te6edf3hashes Tff7b72|| Tb4b4b4[Tb4b4b4]Tb4b4b4)
Tb4b4b4.Te6edf3mapTb4b4b4(Tb4b4b4(Te6edf3hTb4b4b4) Tb4b4b4=> Te6edf3NotificationUtilsTb4b4b4.Te6edf3_normalizeHashTb4b4b4(Te6edf3hTb4b4b4)Tb4b4b4)
Tb4b4b4.Te6edf3filterTb4b4b4(Tffa657BooleanTb4b4b4)
Tb4b4b4.Te6edf3joinTb4b4b4(Ta5d6ff","Tb4b4b4)Tb4b4b4;
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3setOpenConversationHashesTb4b4b4(Te6edf3joinedTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Tff7b72typeof Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3setDoNotDisturbEnabled Tff7b72=== Ta5d6ff"function"Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3setDoNotDisturbEnabledTb4b4b4(Tffa657BooleanTb4b4b4(Te6edf3dndEnabledTb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72catch Tb4b4b4(Te6edf3eTb4b4b4) Tb4b4b4{
Te6edf3consoleTb4b4b4.Te6edf3errorTb4b4b4(Ta5d6ff"Failed to sync Android notification context"Tb4b4b4, Te6edf3eTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tff7b72static Te6edf3cancelIncomingCallNotificationTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3NotificationUtilsTb4b4b4.Te6edf3_isAndroidTb4b4b4(Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tffa657windowTb4b4b4.Te6edf3MeshChatXAndroidTb4b4b4.Te6edf3cancelIncomingCallNotificationTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}
Tff7b72export Tff7b72default Te6edf3NotificationUtilsTb4b4b4;
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────